<?php
/*********************************************************************************
 * Copyright (C) 2017 CDEDUASK ChuangXinGongChang
 * All Rights Reserved.
 * 本软件为华育国际创新工场开发研制。未经本公司正式书面同意，其他任何个人、团体不得使用、复制、修改或发布本软件.
 *********************************************************************************/
/**
 * xxxxx
 * User: 蒋维
 * Date: 2017/7/24
 * Time: 10:43
 */


namespace app\admin\controller;
use think\Request;
use think\captcha\Captcha;

use think\Controller;
use think\Db;

class Website extends Controller
{
  public function carousel(){//返回轮播管理页面
            $carousel=Db::table("carousel")->select();
//            pre($carousel);
           return view("carousel",["carousel"=>$carousel]);
  }
    public function add_course(){//添加picture课程操作
//        pre($_POST);
        if(admin_power()){
                    if(Db::table("picture_course")->insert(["course_id"=>$_POST["course_id"],"picture_id"=>$_POST["picture_id"]])){
                        $this->success("添加成功",url("Website/pictrue_read")."?pid=".$_POST["picture_id"],0,2);
                    }else{
                        $this->error("添加失败",url("Website/pictrue_read")."?pid=".$_POST["picture_id"],0,2);
                    }
        }else{
            $this->error('您没有足够的权限！！');
        }
  }

    public function pictrue_read(){
//        查看pictrue里面的课程
    $class=Db::table("course_classification_fine")->field("record_name")->select();//获取分类
        $picture_course=Db::table("picture_course")->where("picture_id=".$_GET["pid"])->select();//根据picture_id查课程
        for($cc=1;$cc<count($picture_course);$cc++){
            $picture_course["course"][]=Db::table("course")->where("id=".  $picture_course[$cc-1]["course_id"])->find();
        }
//        pre($picture_course);
           return view("picture_read",["course"=>$picture_course["course"],"class"=>$class,"picture_id"=>$_GET["pid"]]);
  }

    public function picture(){ //查看picture
        $carousel=Db::table("picture")->select();
//            pre($carousel);
        return view("picture",["picture"=>$carousel]);
    }

  public function read(){//查看轮播
      $array=Db::table("carousel")->where("id=".$_GET["id"])->find();
      $url=$array["img"];
//      echo "<img href='$url'/>";
      return view("read",["url"=>$url]);
  }

  public function add(){//添加轮播
      if(admin_power()){
      $file=request()->file("files");
//      pre($file);
      if($file){//判断是否存在文件上传
      $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads');
      $aa = $info ->getSaveName();
   if($info){
       $carousel=Db::table("carousel")->insert(["img"=>"__PUBLIC__/uploads/".$aa]);
       if($carousel){
           $this->success("上传成功" ,url("Website/carousel"));
       }else{
           $this->error("上传失败" ,url("Website/carousel"));
       }
        }
      }else{
          $this->error("没有文件哦" ,url("Website/carousel"),0,2);
      }
          }else{
        $this->error('您没有足够的权限！！');
        }
  }

  public function update(){//修改轮播图片
      if(admin_power()){
      $file=request()->file("files");
//      pre($file);
      if($file){//判断是否存在文件上传
      $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads');
      $aa = $info ->getSaveName();
      if($info){
        if (Db::table("carousel")->where("id=".$_GET["id"])->update(["img"=>"__PUBLIC__/uploads/".$aa])){//执行添加操作
            $this->success("修改成功" ,url("Website/carousel"));
        }else{
            $this->error("修改失败" ,url("Website/carousel"));
        }
        }else{
          $this->error("修改失败" ,url("Website/carousel"));
      }
      }  else{
          $this->error("没有文件哦" ,url("Website/carousel"),0,2);
      }
      }else{
          $this->error('您没有足够的权限！！');
      }
  }
    public function picture_update(){//修改picture 的图标
        if(admin_power()){
      $file=request()->file("files");
//      pre($file);
      if($file){//判断是否存在上传文件
      $info = $file->move(ROOT_PATH . 'public' . DS . 'images');
      $aa = $info ->getSaveName();
      if($info){
        if (Db::table("picture")->where("pid=".$_GET["id"])->update(["pimg"=>$aa])){//执行修改操作
            $this->success("修改成功" ,url("Website/picture"));
        }else{
            $this->error("修改失败" ,url("Website/picture"));
        }
        }else{
          $this->error("修改失败" ,url("Website/picture"));
      }
      }  else{
          $this->error("没有文件哦" ,url("Website/picture"),0,2);
      }
            }else{
        $this->error('您没有足够的权限！！');
        }
  }
      public  function delete(){//删除轮播
          if(admin_power()){
          if (Db::table("carousel")->where("id=".$_POST["id"])->delete()){
            return 1;
          }else {
              return 0;
          }
          }else{
              $this->error('您没有足够的权限！！');
          }
      }
    public  function deletes_course(){//删除pictur 的课程
        if(admin_power()){
          if (Db::table("picture_course")->where("course_id=".$_POST["course_id"]." and picture_id=".$_POST["picture_id"])->delete()){
            return 1;
          }else {
              return 0;
          }
            }else{
        $this->error('您没有足够的权限！！');
        }
      }
      public  function moduleone(){//前台首页模块管理
          $module=Db::table("module")->select();//查询所有模块
//          pre($module);
          for ($ss=0;$ss<count($module);$ss++){//循环给每个模块找到对应的课程
              $module[$ss]["content"]=Db::table("content")->where("module_id=" .$module[$ss]["id"])->find();
              unset(  $module[$ss]["content"]["id"],$module[$ss]["content"]["module_id"]);
              if (!empty( $module[$ss]["content"])){
              for ($aa=1;$aa<=count($module[$ss]["content"]);$aa++){
                  $array=Db::table("course")->field("record_name")->where("id=".$module[$ss]["content"]["content".$aa])->find();
                      $module[$ss]["content"]["content".$aa]=$array["record_name"];
              }
              }else{
                  $module[$ss]["content"]["content1"]="<span style='color:red'> 暂无</span>";
                  $module[$ss]["content"]["content2"]="<span style='color:red'> 暂无</span>";
                  $module[$ss]["content"]["content3"]="<span style='color:red'> 暂无</span>";
              }
          }
//          pre($module);
            return view("module",["content"=>$module]);
      }

      public function add_module(){//添加模块
          $class=Db::table("course_classification_fine")->field("record_name")->select();
//pre($class);
              return view("addmodule",["class"=>$class]);
      }

      public function addchange(){//模块添加课程是的change事件返回对应的课程
          $array=Db::table("course")->where("category="."'{$_POST["classname"]}'")->select();
          echo json_encode($array);
      }
    public function add_moduletrue(){//执行添加模块操作
//        pre($_POST);
        if(admin_power()){
        Db::startTrans();
            if(Db::table("module")->insert(["name"=>$_POST["name"]])){//添加模块
                                    unset($_POST["name"]);
//                    echo  Db::table("module")->getLastInsID();
                $_POST["module_id"]= Db::table("module")->getLastInsID();
                if(Db::table("content")->insert($_POST)){//添加模块的课程能容数据
                    DB::commit();
                    $this->success("模块添加成功",url("Website/moduleone"));
                }else{
                    Db::rollback();
                    $this->error("模块添加失败",url("Website/moduleone"));
                }
            }else{
                Db::rollback();
                $this->error("模块添加失败",url("Website/moduleone"));
            }
        }else{
            $this->error('您没有足够的权限！！');
        }
    }
        public function read_module(){//查看模块的内容
//                  echo $_GET["id"];
                  $array=Db::table("content")->where("module_id=".$_GET["id"])->find();//根据ID查看模块内的课程
                  $modlue=Db::table("module")->where("id=".$_GET["id"])->find();//获取模块的基本信息
                  unset($array["id"],$array["module_id"]);
                  for ($ss=1;$ss<=count($array);$ss++){//遍历赋值课程
                      $array["content".$ss]=Db::table("course")->where("id=".$array["content".$ss])->find();
                  }
                    $modlue["content"]=$array;
//            pre($modlue);
                    return view("readmodule",["module"=>$modlue]);
        }
            public  function update_module(){//修改模块也页面
                $array=Db::table("content")->where("module_id=".$_GET["id"])->find();//查询基本信息
                $module=Db::table("module")->where("id=".$_GET["id"])->find();//
//                pre($array);
//                pre($module);
                $content_id=$array["id"];
                unset($array["id"],$array["module_id"]);
                for ($ss=1;$ss<=count($array);$ss++){//遍历出赋值信息
                    $array["content".$ss]=Db::table("course")->field("id,record_name")->where("id=".$array["content".$ss])->find();
                }
                $class=Db::table("course_classification_fine")->field("record_name")->select();
                return view("updatemodule",["module"=>$module,"array"=>$array,"class"=>$class,"content_id"=>$content_id]);
            }
            public function update_module_true(){//执行修改方法
//                pre($_POST);
                if(admin_power()){
                Db::startTrans();
                $array= Db::table("content")->where("id",$_POST["content_id"])->find();
                if( Db::table("module")->where("id",$_POST["module_id"])->find()["name"]!=$_POST["name"]&&
                    ($array["content1"]!=$_POST["content1"]||
                        $array["content2"]!=$_POST["content2"]||
                        $array["content3"]!=$_POST["content3"])){//这里是值修改了name
                    if(Db::table("module")->where("id",$_POST["module_id"])->update(["name"=>$_POST["name"]])){//这是name 和课程都修改了
                            if(Db::table("content")->where("id",$_POST["content_id"])->
                            update(["content1"=>$_POST["content1"],
                                "content2"=>$_POST["content2"],                                                                                                                      "content2"=>$_POST["content2"],
                                "content3"=>$_POST["content3"]])){
                                Db::commit();
                                $this->success("模块修改成功",url("Website/moduleone"));
                            }else{
                                DB::rollback();
                                $this->error("模块修改失败",url("Website/moduleone"));
                            }
                    }else{
                        DB::rollback();
                        $this->error("模块修改失败",url("Website/moduleone"));
                    }
                }else if( Db::table("module")->where("id",$_POST["module_id"])->find()["name"]==$_POST["name"]
                    &&
                    ($array["content1"]!=$_POST["content1"]||
                        $array["content2"]!=$_POST["content2"]||
                        $array["content3"]!=$_POST["content3"])){//这里是只修改了课程
                    if(Db::table("content")->where("id",$_POST["content_id"])->
                    update(["content1"=>$_POST["content1"],
                        "content2"=>$_POST["content2"],
                        "content3"=>$_POST["content3"]])){
                        Db::commit();
                        $this->success("模块修改成功",url("Website/moduleone"));
                    }else{
                        DB::rollback();
                        $this->error("模块修改失败",url("Website/moduleone"));
                    }
                }else if( Db::table("module")->where("id",$_POST["module_id"])->find()["name"]!=$_POST["name"]&&
                    ($array["content1"]==$_POST["content1"]||
                        $array["content2"]==$_POST["content2"]||
                        $array["content3"]==$_POST["content3"])){
                    if(Db::table("module")->where("id",$_POST["module_id"])->update(["name"=>$_POST["name"]])){//这里是只修改了额name
                        Db::commit();
                        $this->success("模块修改成功",url("Website/moduleone"));
                    }else{
                        DB::rollback();
                        $this->error("模块修改失败",url("Website/moduleone"));
                    }
                }
                }else{
                $this->error('您没有足够的权限！！');
                }

            }
            public function delete_module(){//删除模块
                if(admin_power()){
                    if(Request::instance()->isAjax()){
//                        echo $_POST["module_id"];
                        Db::startTrans();
                if(Db::table("module")->where("id=".$_POST["module_id"])->delete()){//执行删除操作
                    $array=Db::table("content")->where("module_id=".$_POST["module_id"])->find();
                    if($array!=null){//判断是否存在课程数据 有就删除
                        if(Db::table("content")->where("module_id=".$_POST["module_id"])->delete()){
                            Db::commit();
                            return 1;
                        }else{

                            Db::rollback();
                            return 0;
                        }
                    }else{
                        Db::commit();
                        return 1;
                    }
                }else{
                    Db::rollback();
                    return 0;

                }
            }else{
                  echo '<script>alert("500 !请求错误")</script>';
                    }
                            }else{
                $this->error('您没有足够的权限！！');
                }

                    }



}

























